// This file was decompiled using SASCM.ini published by GTAG (http://gtag.gtagaming.com/opcode-database) on 14.6.2013
{$CLEO .cs}

//-------------MAIN---------------
thread 'bootle_game' 
0ADF: add_dynamic_GXT_entry "bootl" text "PLAYER bootle shots ~1~ truth bootle shots ~1~" 
0ADF: add_dynamic_GXT_entry "boot2" text "next_round" 
8@ = 0 
wait 0 

:bootle_game_6C
wait 0 
if 
   Player.Defined(0)
jf @bootle_game_6C 
0860: link_actor $PLAYER_ACTOR to_interior 0 
select_interior 0 
Actor.PutAt($PLAYER_ACTOR, -363.5239, 2235.451, 42.4844)
023C: load_special_actor 'truth' as 1 // models 290-299 
Model.Load(#MP5LNG)
038B: load_requested_models 

:bootle_game_B2
wait 0 
if and
   Model.Available(#MP5LNG)
023D:   special_actor 1 loaded 
jf @bootle_game_D1 
jump @bootle_game_D8 

:bootle_game_D1
jump @bootle_game_B2 

:bootle_game_D8
12@ = 0 
11@ = 0 
04C4: store_coords_to 22@ 23@ 24@ from_actor $PLAYER_ACTOR with_offset -1.0 0.0 0.0 
10@ = Actor.Create(Gang1, #SPECIAL01, 22@, 23@, 24@)
07AF: $PLAYER_GROUP = player $PLAYER_CHAR group 
wait 1 
Actor.RemoveReferences(10@)
0631: put_actor 10@ in_group $PLAYER_GROUP 
Actor.GiveWeaponAndAmmo(10@, MP5, 9999)
9@ = Object.Create(1819, -363.286, 2249.844, 42.4743)
Object.Angle(9@) = 90.0
0@ = 0 

:bootle_game_161
wait 0 
0085: 1@ = 0@ // (int) 
1@ *= 4 
0208: 17@ = random_float_in_ranges -1.2 1.2 
0208: 18@ = random_float_in_ranges -1.2 1.2 
0400: store_coords_to 7@ 6@ 5@ from_object 9@ with_offset 17@ 18@ 0.5 
4@ = Object.Create(1551, 7@, 6@, 5@)
Object.Angle(4@) = 90.0
035D: set_object 4@ targetable 1 
0AC6: 2@ = label @bootle_game_56E offset 
005A: 2@ += 1@ // (int) 
0A8C: write_memory 2@ size 4 value 4@ virtual_protect 0 
0@ += 1 
  0@ > 10 
jf @bootle_game_161 
3@ = 2 

:bootle_game_207
wait 0 
02FD: show_text_2numbers_lowpriority GXT "bootl" numbers 12@ 11@ time 100 flag 1 
0@ = 0 

:bootle_game_225
0085: 1@ = 0@ // (int) 
1@ *= 4 
0AC6: 2@ = label @bootle_game_56E offset 
005A: 2@ += 1@ // (int) 
0A8D: 4@ = read_memory 2@ size 4 virtual_protect 0 
if 
03CA:   object 4@ exists 
jf @bootle_game_319 
if and
0366:   object 4@ damaged 
0458:   player $PLAYER_CHAR aiming_at_object 4@ 
jf @bootle_game_29F 
wait 40 
0723: break_object 4@ intensity 1 
035D: set_object 4@ targetable 0 
Object.Destroy(4@)
12@ += 1 
jump @bootle_game_2CD 

:bootle_game_29F
if 
0366:   object 4@ damaged 
jf @bootle_game_2CD 
wait 40 
0723: break_object 4@ intensity 1 
035D: set_object 4@ targetable 0 
Object.Destroy(4@)
11@ += 1 

:bootle_game_2CD
if and
   not Actor.Dead(10@)
03CA:   object 4@ exists 
jf @bootle_game_319 
0208: 17@ = random_float_in_ranges -0.2 0.2 
0208: 18@ = random_float_in_ranges -0.2 0.2 
0400: store_coords_to 7@ 6@ 5@ from_object 4@ with_offset 17@ 18@ 0.0 

:bootle_game_319
if and
  0@ == 0 
   not Actor.Dead(10@)
jf @bootle_game_351 
0668: AS_actor 10@ rotate_and_shoot_at 7@ 6@ 5@ 1400 ms 
Actor.WeaponAccuracy(10@) = 3@
07DD: set_actor 10@ attack_rate 3@ // previously known as temper_to 

:bootle_game_351
0@ += 1 
  0@ > 10 
jf @bootle_game_225 
0085: 3@ = 8@ // (int) 
3@ *= 5 
if 
80FF:   not actor $PLAYER_ACTOR sphere 0 in_sphere -363.5239 2235.451 42.4844 radius 40.0 40.0 10.0 on_foot 
jf @bootle_game_3AC 
jump @bootle_game_500 

:bootle_game_3AC
0AB4: 30@ = var 440 
if or
  30@ == 1 
   Actor.Dead($PLAYER_ACTOR)
   Actor.Dead(10@)
jf @bootle_game_3D7 
jump @bootle_game_500 

:bootle_game_3D7
if 
  12@ == 11 
jf @bootle_game_40F 
0ACD: show_text_highpriority "~g~~h~winner 5000" time 1000 
Player.Money(0) += 5000
jump @bootle_game_46A 

:bootle_game_40F
if 
  11@ == 11 
jf @bootle_game_44A 
0ACD: show_text_highpriority "~r~~h~you lost -5000" time 1000 
Player.Money(0) += -5000
jump @bootle_game_46A 

:bootle_game_44A
if 
  8@ >= 6 
jf @bootle_game_463 
jump @bootle_game_46A 

:bootle_game_463
jump @bootle_game_207 

:bootle_game_46A
wait 200 
0296: unload_special_actor 1 
Object.Destroy(9@)
Actor.DestroyInstantly(10@)
0@ = 0 

:bootle_game_484
0085: 1@ = 0@ // (int) 
1@ *= 4 
0AC6: 2@ = label @bootle_game_56E offset 
005A: 2@ += 1@ // (int) 
0A8D: 4@ = read_memory 2@ size 4 virtual_protect 0 
if 
03CA:   object 4@ exists 
jf @bootle_game_4C6 
Object.Destroy(4@)

:bootle_game_4C6
0@ += 1 
  0@ > 10 
jf @bootle_game_484 
8@ += 1 
0ACD: show_text_highpriority "~y~~h~next_round" time 1000 
jump @bootle_game_D8 

:bootle_game_500
0296: unload_special_actor 1 
Object.Destroy(9@)
Actor.DestroyInstantly(10@)
0@ = 0 

:bootle_game_515
0085: 1@ = 0@ // (int) 
1@ *= 4 
0AC6: 2@ = label @bootle_game_56E offset 
005A: 2@ += 1@ // (int) 
0A8D: 4@ = read_memory 2@ size 4 virtual_protect 0 
if 
03CA:   object 4@ exists 
jf @bootle_game_557 
Object.Destroy(4@)

:bootle_game_557
0@ += 1 
  0@ > 10 
jf @bootle_game_515 
end_thread 

:bootle_game_56E
hex
 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 00 00 00 00 00 00 00 00
end